package br.uff.es1.dao;

import br.uff.es1.Fornecedor;
import java.util.ArrayList;

public class FornecedorDAO {
    private ArrayList<Fornecedor> fornecedores;

    public FornecedorDAO() {
        this.fornecedores = new ArrayList();
        this.fornecedores.add(new Fornecedor("teste Fornecedor", "111", "Ende Forn", "121212"));
    }
    
    public boolean inserir(String nome, String cnpj, String endereco, String telefone){
        Fornecedor f = new Fornecedor(nome, cnpj, endereco, telefone);
        if(f == null){
            return false;
        }else{
            this.fornecedores.add(f);
            return true;
        }
    }
    
    public boolean remover(String nome){
        int idFornecedor = this.pegarIdFornecedor(nome);
        if(this.pegarIdFornecedor(nome) == -1){
            return false;
        }else{
            this.fornecedores.remove(idFornecedor);
            return true;
        }
    }
    
    public int pegarIdFornecedor(String cnpj){
        for (int i = 0; i < fornecedores.size(); i++) {
            if(this.fornecedores.get(i).getCnpj().equalsIgnoreCase(cnpj)){
                return i;
            }
        }
        return -1;
    }
    
    public Fornecedor buscar(String nome){
        for (int i = 0; i < fornecedores.size(); i++) {
            if(this.fornecedores.get(i).getNome().matches(nome)){
                return this.fornecedores.get(i);
            }
        }
        return null;
    }
    
    public Fornecedor buscarPorCNPJ(String cnpj){
        for (int i = 0; i < this.fornecedores.size(); i++) {
            if(this.fornecedores.get(i).getCnpj().equalsIgnoreCase(cnpj)){
                return this.fornecedores.get(i);
            }
        }
        return null;
    }       
        
}
